System.register(['./decorator-applicator'], function (_export) {
'use strict';
var DecoratorApplicator, Decorators;
return {
setters: [function (_decoratorApplicator) {
DecoratorApplicator = _decoratorApplicator.DecoratorApplicator;
}],
execute: function () {
Decorators = {
configure: {
parameterizedDecorator: function parameterizedDecorator(name, decorator) {
Decorators[name] = function () {
var applicator = new DecoratorApplicator();
return applicator[name].apply(applicator, arguments);
};
DecoratorApplicator.prototype[name] = function () {
var result = decorator.apply(null, arguments);
return this.decorator(result);
};
},
simpleDecorator: function simpleDecorator(name, decorator) {
Decorators[name] = function () {
return new DecoratorApplicator().decorator(decorator);
};
DecoratorApplicator.prototype[name] = function () {
return this.decorator(decorator);
};
}
}
};
_export('Decorators', Decorators);
}
};
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9FaXNlbmJlcmdFZmZlY3QvRG9jdW1lbnRzL0dpdEh1Yi9UaGUgRHVyYW5kYWwgUHJvamVjdC9hdXJlbGlhL21ldGFkYXRhL3NyYy9kZWNvcmF0b3JzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OzsyQkFFVyxVQUFVOzs7aURBRmIsbUJBQW1COzs7QUFFaEIsZ0JBQVUsR0FBRztBQUN0QixpQkFBUyxFQUFFO0FBQ1QsZ0NBQXNCLEVBQUEsZ0NBQUMsSUFBSSxFQUFFLFNBQVMsRUFBQztBQUNyQyxzQkFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVU7QUFDM0Isa0JBQUksVUFBVSxHQUFHLElBQUksbUJBQW1CLEVBQUUsQ0FBQztBQUMzQyxxQkFBTyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQzthQUN0RCxDQUFDOztBQUVGLCtCQUFtQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFVO0FBQzlDLGtCQUFJLE1BQU0sR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztBQUM5QyxxQkFBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQy9CLENBQUM7V0FDSDtBQUNELHlCQUFlLEVBQUEseUJBQUMsSUFBSSxFQUFFLFNBQVMsRUFBQztBQUM5QixzQkFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVU7QUFDM0IscUJBQU8sSUFBSSxtQkFBbUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUN2RCxDQUFDOztBQUVGLCtCQUFtQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFVO0FBQzlDLHFCQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDbEMsQ0FBQTtXQUNGO1NBQ0Y7T0FDRjs7NEJBdkJVLFVBQVUiLCJmaWxlIjoiL1VzZXJzL0Vpc2VuYmVyZ0VmZmVjdC9Eb2N1bWVudHMvR2l0SHViL1RoZSBEdXJhbmRhbCBQcm9qZWN0L2F1cmVsaWEvbWV0YWRhdGEvc3JjL2RlY29yYXRvcnMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RlY29yYXRvckFwcGxpY2F0b3J9IGZyb20gJy4vZGVjb3JhdG9yLWFwcGxpY2F0b3InO1xuXG5leHBvcnQgdmFyIERlY29yYXRvcnMgPSB7XG4gIGNvbmZpZ3VyZToge1xuICAgIHBhcmFtZXRlcml6ZWREZWNvcmF0b3IobmFtZSwgZGVjb3JhdG9yKXtcbiAgICAgIERlY29yYXRvcnNbbmFtZV0gPSBmdW5jdGlvbigpe1xuICAgICAgICB2YXIgYXBwbGljYXRvciA9IG5ldyBEZWNvcmF0b3JBcHBsaWNhdG9yKCk7XG4gICAgICAgIHJldHVybiBhcHBsaWNhdG9yW25hbWVdLmFwcGx5KGFwcGxpY2F0b3IsIGFyZ3VtZW50cyk7XG4gICAgICB9O1xuXG4gICAgICBEZWNvcmF0b3JBcHBsaWNhdG9yLnByb3RvdHlwZVtuYW1lXSA9IGZ1bmN0aW9uKCl7XG4gICAgICAgIHZhciByZXN1bHQgPSBkZWNvcmF0b3IuYXBwbHkobnVsbCwgYXJndW1lbnRzKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGVjb3JhdG9yKHJlc3VsdCk7XG4gICAgICB9O1xuICAgIH0sXG4gICAgc2ltcGxlRGVjb3JhdG9yKG5hbWUsIGRlY29yYXRvcil7XG4gICAgICBEZWNvcmF0b3JzW25hbWVdID0gZnVuY3Rpb24oKXtcbiAgICAgICAgcmV0dXJuIG5ldyBEZWNvcmF0b3JBcHBsaWNhdG9yKCkuZGVjb3JhdG9yKGRlY29yYXRvcik7XG4gICAgICB9O1xuXG4gICAgICBEZWNvcmF0b3JBcHBsaWNhdG9yLnByb3RvdHlwZVtuYW1lXSA9IGZ1bmN0aW9uKCl7XG4gICAgICAgIHJldHVybiB0aGlzLmRlY29yYXRvcihkZWNvcmF0b3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19 |